integration techniques